1. Technical Field
The present disclosure relates to an image forming apparatus that performs a printing control by utilizing a storage area of a memory, in particular, an image forming apparatus that correctly detects an excess of a data storage amount in the storage area to aim for stability during printing.
2. Description of the Related Art
In recent years, in an image forming apparatus such as a printer or a copier, a resolution and a gradient tend to be increased along with an increase in an image quality of a job.
On the basis of the above-mentioned technological trend, a typical image forming apparatus uses temporarily stored image data in a preliminary step to aim for smoothness in a printing process.
For example, in a procedure of an image process, various storage areas such as an area for temporarily storing input data, an area for temporarily storing compressed data after the image process, an area for temporarily storing image data for a printing of multiple copies exist and are utilized.
Then, through an attempt to mutually utilize these respective storage areas, a capacity shortage can be compensated for, but a problem of a memory shortage cannot be fundamentally solved.
For this reason, an image forming apparatus is proposed in which when memory full state indicating that a data storage amount exceeds an acceptable amount occurs, the state is resolved and the printing process can continue.
In other words, with regard to the image forming apparatus, an emphasis is put on a countermeasure after the memory shortage is caused in actuality, and with this arrangement, an influence from the memory full state is substantially avoided.
Here, a detection method for the memory full state that is adopted in a typical image forming apparatus will be described.
For example, in a case where a simplex printing is carried out with a copy function on the basis of a plurality of sheets of originals, first, an original reading unit consecutively takes in originals and receives scan images. Subsequently, the received image data is subjected to an image process such as a color conversion process for each band, and the generated image data is stored. Then, once the image data for one page is accumulated, the image data is output in accordance with a linear speed of a printing engine. When the output of the image data for one page is completed, the image data in a video buffer is deleted.
The second page and subsequent pages are sequentially stored in a free space created by deleting the image data after the output of the previous page. Once the image data for one page is accumulated, the image data is output to the printing engine.
In a case where the simplex copy is carried out, if the output is not completed within a specific period of time after the start of the image process of a subject page, it is determined that the memory full state has occurred.
To be more specific, in the video buffer, a period of time during which only the image data of one page is stored is measured by a timer. In a case where this storage state continues for a specific period of time and timeout then occurs, the memory full state is detected.
It should be noted however that with regard to the original of the first page, since reading of the image data can be carried out instantly irrespective of a size or a content of the original document, if the output is not completed within a specific period of time after the start of the intake of the original document, it is determined that the memory full state has occurred.
However, the above-mentioned detection method for the memory full state may cause the following state.
First, in a case where a sheet feeding error occurs because of an engagement of an original document fed from an original tray with sheet feeding rollers or the like, the original reading unit repeatedly performs the process until the intake of the original document is succeeded. In a case where copying of the first page of the original document is carried out, a timer for detecting the memory full state is activated in accordance with the start of the original intake. For this reason, the time elapses while the intake of the original document is repeatedly carried out, and an erroneous detection that the memory full state has occurred in the video buffer may be carried out in some cases.
Also, with regard to printing data corresponding to a job sent from a personal computer or the like, a case in which the data amount is markedly high (for example, a long printing or the like) or a case in which the data amount is markedly low (for example, a character printing or the like) exists, and therefore rendering process times have variations.
For this reason, according to the method in related art in which a reference of the timeout is set as the job reception start time, the memory full state may not be correctly detected in some cases.
Furthermore, according to the method of detecting the memory full state in a case where a state in which only the image data of one page is stored in the video buffer continues for a specific period of time, the memory full state may not be correctly detected in some cases also at the time of a duplex printing.
In the duplex printing, after one face of the sheet is printed, it is necessary to guarantee the output of the image data to the printing engine from the video buffer when the other face is printed. For this reason, the image data is output after at least the image data for two pages corresponding to the front face and the rear face is stored in the video buffer.
According to the above-mentioned method, among the image data for the two pages corresponding to the front face and the rear face, after the first page is stored in the video buffer, even if the memory full state occurs when the remaining page is stored, the state in which only the image data for one page is stored in the video buffer is not established. For this reason, the memory full state may not be correctly detected in some cases.